package com.tzl.design_pattern.adapter_pattern;

/**
 * 适配器模式:<br>
 * 是指将一个类的接口转换成客户期望的另一个接口,使原本的接口不兼容的类可以一起工作,属于结构型模式.<br>
 * 使用场景:<br>
 * 1. 针对已经存在的类,他的方法和需求不匹配的情况.<br>
 * 2. 适配器模式不是软件设计阶段考虑的设计模式,是随着软件维护,产生了许多功能类似而接口不相同情况下的一种解决方案.<br>
 * 优点:<br>
 * 1. 能提高类的透明性和复用性,现有的类复用但不需要改变.<br>
 * 2. 目标类和适配器类解耦,提高程序的扩展性.<br>
 * 3. 在很多业务场景中符合开闭原则.<br>
 * 缺点:<br>
 * 1. 编写过程中需要全面考虑,可能会增加系统的复杂性.<br>
 * 2. 增加代码阅读难度,降低代码可读性,过多使用会使系统代码变得凌乱.<br>
 *
 * @author Zhilei Tang
 * @date Created in 2020/11/16 21:05
 */
public class AdapterTest {
  public static void main(String[] args) {
    LoginByOtherModeService service = new LoginByOtherModeService();
    service.loginByWechat("3434343");
    service.loginByTelephone("123432434");
  }
}
